博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信小程序(11)--购物车
阅读量:4336 次
发布时间:2019-06-07

本文共 3084 字,大约阅读时间需要 10 分钟。

今天记录一下购物车案例,实现购物车的全选,单选,数量加一减一,金额总数,以及清空购物车。

{
{item.title}}
¥{
{item.price}}
-
{ {item.num}}
+
×
全选
¥{
{totalPrice}}
购物车是空的哦~
// page/component/new-pages/cart/cart.jsPage({  data: {    carts:[],               // 购物车列表    hasList:false,          // 列表是否有数据    totalPrice:0,           // 总价,初始为0    selectAllStatus:true    // 全选状态,默认全选  },  onShow() {    this.setData({      hasList: true,      carts:[        {id:1,title:'白菜 半斤',image:'/image/s5.png',num:4,price:0.02,selected:true},        {id:2,title:'素米 500g',image:'/image/s6.png',num:1,price:0.05,selected:true}      ]    });    this.getTotalPrice();  },  /**   * 当前商品选中事件   */  selectList(e) {    const index = e.currentTarget.dataset.index;    let carts = this.data.carts;    const selected = carts[index].selected;    carts[index].selected = !selected;    this.setData({      carts: carts    });    this.getTotalPrice();  },  /**   * 删除购物车当前商品   */  deleteList(e) {    const index = e.currentTarget.dataset.index;    let carts = this.data.carts;    carts.splice(index,1);    this.setData({      carts: carts    });    if(!carts.length){      this.setData({        hasList: false      });    }else{      this.getTotalPrice();    }  },  /**   * 购物车全选事件   */  selectAll(e) {    let selectAllStatus = this.data.selectAllStatus;    selectAllStatus = !selectAllStatus;    let carts = this.data.carts;    for (let i = 0; i < carts.length; i++) {      carts[i].selected = selectAllStatus;    }    this.setData({      selectAllStatus: selectAllStatus,      carts: carts    });    this.getTotalPrice();  },  /**   * 绑定加数量事件   */  addCount(e) {    const index = e.currentTarget.dataset.index;    let carts = this.data.carts;    let num = carts[index].num;    num = num + 1;    carts[index].num = num;    this.setData({      carts: carts    });    this.getTotalPrice();  },  /**   * 绑定减数量事件   */  minusCount(e) {    const index = e.currentTarget.dataset.index;    let carts = this.data.carts;    let num = carts[index].num;    if(num <= 1){      return false;    }    num = num - 1;    carts[index].num = num;    this.setData({      carts: carts    });    this.getTotalPrice();  },  /**   * 计算总价   */  getTotalPrice() {    let carts = this.data.carts;                  // 获取购物车列表    let total = 0;    for(let i = 0; i

 

转载于:https://www.cnblogs.com/juewuzhe/p/8227799.html

你可能感兴趣的文章
linux下查找文件和文件内容
查看>>
Flask-SQLAlchemy
查看>>
linux7.5 防火墙命令
查看>>
单链表
查看>>
洛谷P3182 [HAOI2016]放棋子
查看>>
modern.IE – 微软发布的 IE 兼容性测试工具和资源
查看>>
35个立体动感的视差滚动效果网站作品
查看>>
第二次试验报告
查看>>
数据库的四大特性以及事务的隔离级别
查看>>
Web版RSS阅读器(五)——初步完成阅读功能
查看>>
paip.提升性能---- 网站并发数的总结.txt
查看>>
PAT甲级——1131 Subway Map (30 分)
查看>>
wamp 修改www目录
查看>>
【原】Coursera—Andrew Ng机器学习—Week 10 习题—大规模机器学习
查看>>
【原】Coursera—Andrew Ng机器学习—Week 8 习题—聚类 和 降维
查看>>
(转)App工程结构搭建:几种常见Android代码架构分析
查看>>
java基础要点
查看>>
设计模式
查看>>
orcle定时备份
查看>>
window下解决端口占用
查看>>